Search SRS
for CDT 2.0
Requirements for Search |
 |
Author |
: Bogdan Gheorghe
|
Revision Date |
: 04/30/2002 - Version: 0.1.0 |
Change History |
: 0.1.0 - Document Creation |
Table of Contents
This document is meant to clarify the requirements on Search for the
CDT 2.0 release.
Here's a list of the search requirements for CDT 2.0:
ID
|
Requirement
|
Priority
|
R1
|
Search will make all attempts to
work "out of the box" - i.e. all the include paths that can be
extracted are extracted
|
P1
|
R2
|
Search can be invoked in the
editor from the context menu
|
P1
|
R3
|
Search will be able to search
and place markers on external documents
|
P2
|
R4
|
Working Sets need to follow
Project references
|
P2
|
R5
|
Move search to background
|
P1
|
R6
|
Add Project as one of the
immediate scopes available
|
P2
|
The issue is how to automatically set up projects to allow the
indexer to properly index the files and enable search to function
properly. This task will be delegated to the individual build systems -
see Managed Make SRS / Standard Make Enhancments SRS.
One of the glaring deficienies of Search in CDT 1.2 is the absence of a
true context menu-based selection search. We need to be able to select
an element in the editor, select the search scope/type from the context
menu, and have search automatically pop up the results. This feature
has an explicit dependency on the parser being able to provide semantic
info about a selection.
The search type options will be:
- Declarations
- Definitions
- References
Each of these search type options will have the following scope
submenus:
- Workspace
- Project
- Working Set...
We need to be able to place markers on external files (files not in the
workspace). This will allow the CDT to include external files in search
results.
There are no C/C++ working sets in the CDT. The only working set type
that can be used with search is the Resource working set. If you create
a working set which contains Project A, and Project A references
Project B, only the resources in Project A are included in the search.
One of the proposed enhancements to the CDT UI for 2.0 is that of C/C++
working sets. These working sets should provide an extra layer of
functionality on top of the raw resource-based working set - that is,
they should be able to follow project references. So if the user was to
create a C/C++ working set, and selected Project A to be in his working
set, and Project A referenced Project B, all of Project A's files and
Project B's exported files would be included in the search.
Eclipse 3.0 has introduced a new mechanism for running jobs in the
background. As such, the JDT search no longer blocks, but runs in the
background, returning matches as they are found. The CDT search needs
to do this as well.
The JDT has added 'Project' as one of the default search scopes
available - this should be added to the CDT as well. For the CDT this
will mean that Search will look in all of the project's resources plus
any referenced project's exported resources.
Eclipse 3.0 spec
CPathEntry FDS
Standard Make Enhancements FDS
Last Modified on Thursday, December 11, 2003